package com.example.xpvideo.entity;

import java.math.BigDecimal;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 优惠券(LsCoupon)实体类
 *
 * @author 
 * @since 2021-09-23 10:40:04
 */
@ApiModel("优惠券")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class LsCoupon implements Serializable {
    private static final long serialVersionUID = -40168876458048538L;
        /**
    *主键
    * ${column.comment}
    * isnull 1
    */
    @ApiModelProperty(value="$column.comment",position=1)
    private Integer id;

    /**
    * 优惠券名称
    * isnull 0
    */        @ApiModelProperty(value="优惠券名称",position=2)
    private String name;
    /**
    * 发放开始时间
    * isnull 0
    */        @ApiModelProperty(value="发放开始时间",position=3)
    private Integer sendTimeStart;
    /**
    * 发放结束时间
    * isnull 0
    */        @ApiModelProperty(value="发放结束时间",position=4)
    private Integer sendTimeEnd;
    /**
    * 优惠券面额(元)
    * isnull 0
    */        @ApiModelProperty(value="优惠券面额(元)",position=5)
    private BigDecimal money;
    /**
    * 使用条件类型：1-无门槛；2-订单满足金额
    * isnull 0
    */        @ApiModelProperty(value="使用条件类型：1-无门槛；2-订单满足金额",position=6)
    private Integer conditionType;
    /**
    * 使用条件类型为2时：该字段为订单满足金额可使用
    * isnull 0
    */        @ApiModelProperty(value="使用条件类型为2时：该字段为订单满足金额可使用",position=7)
    private BigDecimal conditionMoney;
    /**
    * 发送总量类型：1-不限制；2-限制张数
    * isnull 0
    */        @ApiModelProperty(value="发送总量类型：1-不限制；2-限制张数",position=8)
    private Integer sendTotalType;
    /**
    * 发送总量类型为2时：该字段为限制的张数
    * isnull 0
    */        @ApiModelProperty(value="发送总量类型为2时：该字段为限制的张数",position=9)
    private Integer sendTotal;
    /**
    * 用券时间类型：1-固定时间；2-领券当天起；3-领券次日起
    * isnull 0
    */        @ApiModelProperty(value="用券时间类型：1-固定时间；2-领券当天起；3-领券次日起",position=10)
    private Integer useTimeType;
    /**
    * 用券时间类型为1时：该字段为使用开始时间；
    * isnull 0
    */        @ApiModelProperty(value="用券时间类型为1时：该字段为使用开始时间；",position=11)
    private Integer useTimeStart;
    /**
    * 用券时间类型为1时：该字段为使用结束时间；
    * isnull 0
    */        @ApiModelProperty(value="用券时间类型为1时：该字段为使用结束时间；",position=12)
    private Integer useTimeEnd;
    /**
    * 用券时间类型为2、3时：该字段为多少天内可用；
    * isnull 0
    */        @ApiModelProperty(value="用券时间类型为2、3时：该字段为多少天内可用；",position=13)
    private Integer useTime;
    /**
    * 领取类型：1-直接领取；2-商家赠送;
    * isnull 0
    */        @ApiModelProperty(value="领取类型：1-直接领取；2-商家赠送;",position=14)
    private Integer getType;
    /**
    * 领取次数类型：1-不限制领取次数；2-限制次数；3-每天限制数量
    * isnull 0
    */        @ApiModelProperty(value="领取次数类型：1-不限制领取次数；2-限制次数；3-每天限制数量",position=15)
    private Integer getNumType;
    /**
    * 领取次数类型为：2、3时：该字段为领取限制的数量
    * isnull 0
    */        @ApiModelProperty(value="领取次数类型为：2、3时：该字段为领取限制的数量",position=16)
    private Integer getNum;
    /**
    * 适用商品类型:1-全部商品；2-指定商品；3-指定商品不可用
    * isnull 0
    */        @ApiModelProperty(value="适用商品类型:1-全部商品；2-指定商品；3-指定商品不可用",position=17)
    private Integer useGoodsType;
    /**
    * 优惠券状态：1-上架中；0-已下架
    * isnull 0
    */        @ApiModelProperty(value="优惠券状态：1-上架中；0-已下架",position=18)
    private Integer status;
    /**
    * 创建时间
    * isnull 0
    */        @ApiModelProperty(value="创建时间",position=19)
    private Integer createTime;
    /**
    * 更新时间
    * isnull 0
    */        @ApiModelProperty(value="更新时间",position=20)
    private Integer updateTime;
    /**
    * 是否删除；1-是；0-否
    * isnull 0
    */        @ApiModelProperty(value="是否删除；1-是；0-否",position=21)
    private Integer del;
    /**
    * 商家id
    * isnull 0
    */        @ApiModelProperty(value="商家id",position=22)
    private Integer shopId;
        
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
        
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
        
    public Integer getSendTimeStart() {
        return sendTimeStart;
    }

    public void setSendTimeStart(Integer sendTimeStart) {
        this.sendTimeStart = sendTimeStart;
    }
        
    public Integer getSendTimeEnd() {
        return sendTimeEnd;
    }

    public void setSendTimeEnd(Integer sendTimeEnd) {
        this.sendTimeEnd = sendTimeEnd;
    }
        
    public BigDecimal getMoney() {
        return money;
    }

    public void setMoney(BigDecimal money) {
        this.money = money;
    }
        
    public Integer getConditionType() {
        return conditionType;
    }

    public void setConditionType(Integer conditionType) {
        this.conditionType = conditionType;
    }
        
    public BigDecimal getConditionMoney() {
        return conditionMoney;
    }

    public void setConditionMoney(BigDecimal conditionMoney) {
        this.conditionMoney = conditionMoney;
    }
        
    public Integer getSendTotalType() {
        return sendTotalType;
    }

    public void setSendTotalType(Integer sendTotalType) {
        this.sendTotalType = sendTotalType;
    }
        
    public Integer getSendTotal() {
        return sendTotal;
    }

    public void setSendTotal(Integer sendTotal) {
        this.sendTotal = sendTotal;
    }
        
    public Integer getUseTimeType() {
        return useTimeType;
    }

    public void setUseTimeType(Integer useTimeType) {
        this.useTimeType = useTimeType;
    }
        
    public Integer getUseTimeStart() {
        return useTimeStart;
    }

    public void setUseTimeStart(Integer useTimeStart) {
        this.useTimeStart = useTimeStart;
    }
        
    public Integer getUseTimeEnd() {
        return useTimeEnd;
    }

    public void setUseTimeEnd(Integer useTimeEnd) {
        this.useTimeEnd = useTimeEnd;
    }
        
    public Integer getUseTime() {
        return useTime;
    }

    public void setUseTime(Integer useTime) {
        this.useTime = useTime;
    }
        
    public Integer getGetType() {
        return getType;
    }

    public void setGetType(Integer getType) {
        this.getType = getType;
    }
        
    public Integer getGetNumType() {
        return getNumType;
    }

    public void setGetNumType(Integer getNumType) {
        this.getNumType = getNumType;
    }
        
    public Integer getGetNum() {
        return getNum;
    }

    public void setGetNum(Integer getNum) {
        this.getNum = getNum;
    }
        
    public Integer getUseGoodsType() {
        return useGoodsType;
    }

    public void setUseGoodsType(Integer useGoodsType) {
        this.useGoodsType = useGoodsType;
    }
        
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
        
    public Integer getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Integer createTime) {
        this.createTime = createTime;
    }
        
    public Integer getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Integer updateTime) {
        this.updateTime = updateTime;
    }
        
    public Integer getDel() {
        return del;
    }

    public void setDel(Integer del) {
        this.del = del;
    }
        
    public Integer getShopId() {
        return shopId;
    }

    public void setShopId(Integer shopId) {
        this.shopId = shopId;
    }

        @Override
    public String toString() {
        return "{" +
                    " \"id\":" + id +
                                  " ,\"name\":" + name +
                            " ,\"sendTimeStart\":" + sendTimeStart +
                            " ,\"sendTimeEnd\":" + sendTimeEnd +
                            " ,\"money\":" + money +
                            " ,\"conditionType\":" + conditionType +
                            " ,\"conditionMoney\":" + conditionMoney +
                            " ,\"sendTotalType\":" + sendTotalType +
                            " ,\"sendTotal\":" + sendTotal +
                            " ,\"useTimeType\":" + useTimeType +
                            " ,\"useTimeStart\":" + useTimeStart +
                            " ,\"useTimeEnd\":" + useTimeEnd +
                            " ,\"useTime\":" + useTime +
                            " ,\"getType\":" + getType +
                            " ,\"getNumType\":" + getNumType +
                            " ,\"getNum\":" + getNum +
                            " ,\"useGoodsType\":" + useGoodsType +
                            " ,\"status\":" + status +
                            " ,\"createTime\":" + createTime +
                            " ,\"updateTime\":" + updateTime +
                            " ,\"del\":" + del +
                            " ,\"shopId\":" + shopId +
                  '}';
    }


}
